/**
 *
 * reflect和reflect metadata
 *
 * 元数据：元编程（Metaprogramming）是编写、操纵程序的程序，简而言之即为用代码生成代码。元编程是一种编程范式，在传统的编程范式中，程序运行是动态的，但程序本身是静态的。
 *        在元编程中，两者都是动态的[1]。元编程将程序作为数据来对待，从而赋予了编程语言更加强大的表达能力
 * 元编程
 * 元反射
 */

require("reflect-meta");
console.log(typeof (Reflect as any).defineMetadata);
var target = { name: "rose" };
// Reflect.defineMetadata("version", 1, target);
